/*

Copyright (C) 2007 Thomas Geiger (tom.geiger@gmail.com) 

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

*/

#include <octave/oct.h>

using namespace std;

DEFUN_DLD(gt_help, 
          args, 
          , 
          "Show information for Octave Gridtoolbox functions."
          ) 
{		
	cout << "gt_help:" << endl;
	cout << endl;
	cout << "Octave Gridtoolbox 0.5" << endl; 
	cout << endl;
	cout << "Authentication:" << endl;
	cout << " - gt_certinfo - Show certificate information." << endl;
	cout << " - gt_createproxy - Create a proxy certificate." << endl;
	cout << " - gt_destroyproxy - Delete proxy certificiate." << endl;
	cout << " - gt_proxyinfo - Show information for a proxy certificiate." << endl;
	cout << endl;
	cout << "GRAM job submission:" << endl;
	cout << " - gt_jobkill - Cancel a GRAM job." << endl;
	cout << " - gt_jobping - Check if jobmanager is available." << endl;
	cout << " - gt_jobpoll - Monitor a GRAM job." << endl;
	cout << " - gt_jobsubmit - Submit a job." << endl;
	cout << " - gt_jobstatus - Report status for a GRAM job." << endl;
	cout << endl;
	cout << "File Transfer:" << endl;
	cout << " any protocol" << endl;
	cout << " - gt_load - Load Octave file from a Globus file resource." << endl;
	cout << " - gt_save - Save Octave variables to a Globus file resource." << endl;
	cout << " GASS" << endl;
	cout << " - gt_startgass - Start a GASS server." << endl;
	cout << " - gt_stopgass - Stop GASS server." << endl;
	cout << " GridFTP" << endl;
	cout << " - gt_delete - Delete file." << endl;
	cout << " - gt_exists - Check if file/directory exists." << endl;
	cout << " - gt_mkdir - Create directory." << endl;
	cout << " - gt_rmdir - Remove directory." << endl;
	cout << " - gt_sizeof - Get size of file." << endl;
	cout << " - gt_transfer - Initiate 3rd party transfer." << endl;	
	cout << endl;
	
	return octave_value(true);	                                            
}
